EC2をProxyサーバにしてIPv4オンリーの自宅ネットワークをIPv6対応にしてみた
こんにちは。
コンサルティング部 繁松です。
以前IPv6に関するブログを書いたのですが、その際に自宅のネットワークがIPv4にしか対応しておらず、IPv6のリソースへの接続が出来ないことに気が付きました。
そこで、IPv6/IPv4デュアルスタックのEC2インスタンスをProxyサーバにしてIPv6のリソースに接続してみたので、その手順を記事にしました。
構成図
Proxyサーバに接続し確認
IPv6 オンリーのEC2にSSH接続
IPv6に対応しているか確認
自宅のネットワークがIPv6に対応しているか確認します。
確認にはこちらのWebサイトを使用させて頂きました。
あなたの IPv6 接続性をテストしましょう。
IPv6には対応していないことがわかります。
対応していない為以下のIPv6のGoogleのページも開けません。
https://ipv6.google.com/
前提
- VPCとSubnetはIPv4/IPv6デュアルスタックのものを準備します
- サブネットはIPv4とIPv6のルートのあるパブリックサブネットを準備します
- IPv4/IPv6デュアルスタックのEC2(Amazon Linux2)を準備します
手順
AWS環境確認
1. VPC,Subnetの確認
IPv4/IPv6デュアルスタックになっていることを確認します。
ルートテーブルにIPv4とIPv6のルートがあることを確認します。
2. EC2の確認
IPv4/IPv6デュアルスタックになっていることを確認します。
Proxyサーバ設定
EC2に接続しSquidのインストールと設定を進めます。
1. Squidインストール
sudo yum -y install squid
2. Squid設定
sudo vim /etc/squid/squid.conf
以下の内容を追記します。
acl SSL_ports port 22 acl Safe_ports port 22 # ssh
# Squidを使用する自宅のIPアドレス acl myacl src 自宅のIPアドレス/32 # 自宅PCのアクセス許可 http_access allow myacl
14行目あたり
acl SSL_ports port 443 acl SSL_ports port 22 acl Safe_ports port 22 # ssh acl Safe_ports port 80 # http
50行目あたり
# # INSERT YOUR OWN RULE(S) HERE TO ALLOW ACCESS FROM YOUR CLIENTS # # Squidを使用する自宅のIPアドレス acl myacl src 自宅のIPアドレス/32 # 自宅PCのアクセス許可 http_access allow myacl # Example rule allowing access from your local networks. # Adapt localnet in the ACL section to list your (internal) IP networks
3. 再起動
sudo systemctl restart squid
4. セキュリティグループの変更
EC2のセキュリティグループのインバウンドルールに以下の内容を追加します。
ポート範囲:3128
ソース:自宅のIP
Proxyサーバに接続し確認
ブラウザの拡張機能 FoxyProxyを使って確認してみます。
Proxy IP address or DNS name :EC2のIPv4アドレス
Port :3128
あなたの IPv6 接続性をテストしましょう。
IPv6に対応したことがわかります。
対応した為以下のIPv6のGoogleのページが開けるようになりました。
https://ipv6.google.com/
IPv6オンリーのEC2にSSH接続
Puttyを使ってProxyサーバ経由でIPv6オンリーのEC2にSSH接続をしてみます。
1. セキュリティグループの変更
接続先のEC2(IPv6オンリー)のセキュリティグループ インバウンドルールに、接続元のEC2(Proxyサーバ)のIPv6アドレスを許可する以下の設定を追加します。
タイプ:SSH
ソース:接続元のEC2(Proxyサーバ)のIPv6アドレス
2. puttyを使って接続
カテゴリ→接続→プロキシ
プロキシのタイプ:HTTP
プロキシのホスト名:Proxy用EC2のIPv4アドレス
ポート:3128
カテゴリ→セッション
ホスト名:[接続先のIPv6アドレス]
IPv6アドレスは角括弧([])で囲みます。
キーファイル等を指定し接続します。
IPv6オンリーのEC2に接続できました。
同じVPC内でないIPv6オンリーのEC2にも接続可能です。
さいごに
IPv4しか対応していなかった自宅のネットワークからIPv6のリソースとの通信が出来ないかと思いやってみました。
今後IPv6が普及した際にはもしかしたら必要になるかもしれません。
以上、EC2をProxyサーバにしてIPv4オンリーの自宅ネットワークをIPv6対応にしてみたでした。 なにかのお役に立つと幸いです。